#include "../../mqserver/channel.hpp"

void func(const muduo::net::TcpConnectionPtr &, const MessagePtr &, muduo::Timestamp)
{
}

int main()
{
    // NS_Channel::Channel::Ptr ptr = std::make_shared<NS_Channel::Channel>("channel1",
    //                                                                      std::make_shared<NS_Host::VirtualHost>(),
    //                                                                      std::make_shared<NS_Consumer::ConsumerManager>(),
    //                                                                      std::make_shared<muduo::net::TcpConnection>(),
    //                                                                      std::make_shared<ProtobufCodec>(func),
    //                                                                      std::make_shared<ThreadPool>(5));

    // NS_Channel::Channel::Ptr ptr = std::make_shared<NS_Channel::Channel>("const std::string &channel_id",
    //                                                                      NS_Host::VirtualHost::Ptr(),
    //                                                                      NS_Consumer::ConsumerManager::Ptr(),
    //                                                                      muduo::net::TcpConnectionPtr(),
    //                                                                      NS_Channel::ProtobufCodecPtr(),
    //                                                                      ThreadPool::Ptr());

                                                                         NS_Channel::ChannelManager::Ptr p = std::make_shared<NS_Channel::ChannelManager>();
                                                                         p->openChannel("const std::string &channel_id",
                                                                         NS_Host::VirtualHost::Ptr(),
                                                                         NS_Consumer::ConsumerManager::Ptr(),
                                                                         NS_Channel::ProtobufCodecPtr(),
                                                                         muduo::net::TcpConnectionPtr(),
                                                                         ThreadPool::Ptr());
    return 0;
}